.waves {
    position: relative;
    width: 100%;
    height: 15vh;
    margin-bottom: -7px;
    /*Fix for safari gap*/
    min-height: 100px;
    max-height: 150px;
}

/* Animation */

.parallax > use {
    animation: move-forever 25s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite;
}

.parallax > use:nth-child(1) {
    animation-delay: -2s;
    animation-duration: 7s;
}

.parallax > use:nth-child(2) {
    animation-delay: -3s;
    animation-duration: 10s;
}

.parallax > use:nth-child(3) {
    animation-delay: -4s;
    animation-duration: 13s;
}

.parallax > use:nth-child(4) {
    animation-delay: -5s;
    animation-duration: 20s;
}

@keyframes move-forever {
    0% {
        transform: translate3d(-90px, 0, 0);
    }

    100% {
        transform: translate3d(85px, 0, 0);
    }
}


html {
    display: block;
}

body {
    display: flex;
    justify-content: space-between;
    align-content: center;
    flex-wrap: nowrap;
    flex-direction: column;
}

.header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.flex-item {
    display: flex;
}

.item {
    cursor: pointer;
}


@media only screen and (max-device-width: 768px) {
    .header {
        margin-top: 10vh;  
    }

    .header h1{
        font-size: 60px;
    }

    .header p{
        font-size: 38px;
    }

    .item {
        width: 25vw;
        height: 25vw;
    }

    .waves {
        height: 20vh;
        max-height: 20vh;
    }

    .main-container{
        width: 90vw;
        height: 90vw;
        display: grid;
        grid-template-columns: repeat(3, 25vmin);
        grid-template-rows: repeat(3, 25vmin);
        grid-gap: 8vmin;
    }

    .flex-item p {
        font-size: 4vw;
        font-family: "Lato", sans-serif;
        font-weight: 300;
        letter-spacing: 2px;
        color: #fff;
    }

    .loader {
        --color: white;
        --size-mid: 10vmin;
        --size-dot: 4vmin;
        --size-bar: 1.3vmin;
        --size-square: 4vmin;
    }

    .loader.--1::before {
        border-width: 10px;
    }

    .loader.--1::after {
        border-width: 5px;
    }
}